<?php
use Workerman\Protocols\Http;
// 兼容Workerman环境
function _session_start()
{
    if (PHP_SAPI === 'cli') {
        return Http::sessionStart();
    }
    session_start();
}

function _exit($data = '')
{
    if (PHP_SAPI === 'cli') {
        return Http::end($data);
    }
    exit($data);
}

function _json($data) {
    echo json_encode($data);
}

function exit_json($data) {
    _json($data);
    _exit();
}

function _header($val, $r = null, $c = null) {
    if (PHP_SAPI === 'cli') {
        return Http::header($val, $r, $c);
    }
    header($val, $r, $c);
}

function format_time($show_time){
    $now_time = time();
    $dur = $now_time - $show_time;
    $the_time = date('Y-m-d H:i:s', $show_time);
    if($dur < 0){
        return the_time;
    }else{
        if($dur < 60){
            return $dur.'秒前';
        }else{
            if($dur < 3600){
                return floor($dur/60).'分钟前';
            }else{
                if($dur < 86400){
                    return floor($dur/3600).'小时前';
                }else{
                    if($dur < 259200){//3天内
                        return floor($dur/86400).'天前';
                    }else{
                        return $the_time;
                    }
                }
            }
        }
    }
}
/**
 * 本地和线上 服务器地址切换
 * @author wjb
 * @date 2017/4/20
 * @return string
 */
function config_url($type){
    switch ($type){
        //本地
        case 1 :
            $local = SERVICE_URL;
            break;
        //线上
        case 2 :
            $local = SERVICE_URL;
            break;
    }
    return $local;
}

/**
 * 获取分类用户的头像
 * @author wjb
 * @date 2017/4/19
 * @param $type
 * @return string
 */
function config_img($type){
    switch ($type){
        //用户头像
        case 1 :
            $avatar=AVATAR_USER;
            break;
        //客服头像
        case 2 :
            $avatar=AVATAR_ADMIN;
            break;
    }

    return $avatar;
}

/**
 * 整理数据形势
 * @author wjb
 * @date 2016/11/20
 * @param $arr
 * @param $field
 * @return mixed
 */
function t($arr,$field){
    $newArr=array();
    for($j=0;$j<count($arr);$j++){
        @$newArr[]=$arr[$j][$field];
    }
    array_multisort($newArr,$arr);
    return $arr;
}

/**
 * 二维数组按指定字段进行排序
 * @param $list 数组
 * @param $field 指定字段
 * @param string $sortby 排序方式
 * @return array|bool
 */
function list_sort_by($list, $field, $sortby = 'asc')
{
    if (is_array($list))
    {
        $refer = $resultSet = array();
        foreach ($list as $i => $data)
        {
            $refer[$i] = &$data[$field];
        }
        switch ($sortby)
        {
            case 'asc': // 正向排序
                asort($refer);
                break;
            case 'desc': // 逆向排序
                arsort($refer);
                break;
            case 'nat': // 自然排序
                natcasesort($refer);
                break;
        }
        foreach ($refer as $key => $val)
        {
            $resultSet[] = &$list[$key];
        }
        return $resultSet;
    }
    return false;
}
/**
 * 在字符串中查找指定字符
 * @author wjb
 * @param $haystack
 * @param $needle
 * @return bool
 */
function isInString1($haystack, $needle) {
    if(strpos($haystack, $needle)){
        return true;
    }else{
        return false;
    }
}